package com.training.java.core.interfaces;

public class Dog implements Animal {

	private String name;
	private String color;
	private String type;
	private int age;
	
	// constructor & Initializing the initial values 
	public Dog(String name, String color, String type, int age) {
		super();
		this.name = name;
		this.color = color;
		this.type = type;
		this.age = age;
	}
	
	public void name()
	{
		System.out.println("Name of my dog is Dougie");
	}
	
	// Getters
	public String getName() {
		return name;
	}
	
	public String getColor() {
		return color;
	}

	public String type() {
		return type;
	}

	public int getAge() {
		return age;
	}
	
	
	// Coding to interface
	@Override
	public void noise() {
		System.out.println( name + " just jumps up and down when hears a knock.");
		
	}

	@Override
	public void houseSoiling() {
		System.out.println( name + " has just pissed all over.");
		
	}

	@Override
	public void gettingAlong() {
		System.out.println( name + " is not getting along with other pets.");
		
	}

	@Override
	public void destructiveBehavior() {
		System.out.println( name + " is scratching, destroying things.");
	}

	@Override
	public void eat() {
		System.out.println( name + " is eating.");
	}

	@Override
	public void sleep() {
		System.out.println( name + " is sleeping.");
	}

}
